﻿using Enums;
using System.ComponentModel;
using SqlSugar;

namespace Model.Entity
{
    /// <summary>
    /// 用户表：存储系统用户的基本信息
    /// </summary>
    [Serializable]
    [Tenant(SqlConfigIdEnum.Test)]    
    [Description("用户表：存储系统用户的基本信息")]
    [SugarTable("Users")]
    public partial class Users
    {
           public Users(){

            this.Status =Convert.ToByte("1");
            this.CreateTime =DateTime.Now;
            this.UpdateTime =DateTime.Now;
            this.IsDeleted =false;

           }
           /// <summary>
           /// Desc:用户ID：主键，自增长
           /// Default:
           /// Nullable:False
           /// </summary>
           [Description("用户ID：主键，自增长")]           
           [SugarColumn(IsPrimaryKey=true,IsIdentity=true)]
           public int UserId {get;set;}

           /// <summary>
           /// Desc:用户名：用于登录系统的唯一标识
           /// Default:
           /// Nullable:False
           /// </summary>
           [Description("用户名：用于登录系统的唯一标识")]           
           public string Username {get;set;} = null!;

           /// <summary>
           /// Desc:密码哈希：存储加密后的密码
           /// Default:
           /// Nullable:False
           /// </summary>
           [Description("密码哈希：存储加密后的密码")]           
           public string PasswordHash {get;set;} = null!;

           /// <summary>
           /// Desc:真实姓名：用户的真实姓名
           /// Default:
           /// Nullable:False
           /// </summary>
           [Description("真实姓名：用户的真实姓名")]           
           public string RealName {get;set;} = null!;

           /// <summary>
           /// Desc:邮箱：用户邮箱地址
           /// Default:
           /// Nullable:True
           /// </summary>
           [Description("邮箱：用户邮箱地址")]           
           public string? Email {get;set;}

           /// <summary>
           /// Desc:手机号：用户手机号码
           /// Default:
           /// Nullable:True
           /// </summary>
           [Description("手机号：用户手机号码")]           
           public string? Phone {get;set;}

           /// <summary>
           /// Desc:状态：0-禁用, 1-启用
           /// Default:1
           /// Nullable:False
           /// </summary>
           [Description("状态：0-禁用, 1-启用")]           
           public byte Status {get;set;}

           /// <summary>
           /// Desc:最后登录时间：记录用户最后一次登录的时间
           /// Default:
           /// Nullable:True
           /// </summary>
           [Description("最后登录时间：记录用户最后一次登录的时间")]           
           public DateTime? LastLoginTime {get;set;}

           /// <summary>
           /// Desc:最后登录IP：记录用户最后一次登录的IP地址
           /// Default:
           /// Nullable:True
           /// </summary>
           [Description("最后登录IP：记录用户最后一次登录的IP地址")]           
           public string? LastLoginIP {get;set;}

           /// <summary>
           /// Desc:创建时间：记录用户账号创建的时间
           /// Default:DateTime.Now
           /// Nullable:False
           /// </summary>
           [Description("创建时间：记录用户账号创建的时间")]           
           public DateTime CreateTime {get;set;}

           /// <summary>
           /// Desc:更新时间：记录用户信息最后更新的时间
           /// Default:DateTime.Now
           /// Nullable:False
           /// </summary>
           [Description("更新时间：记录用户信息最后更新的时间")]           
           public DateTime UpdateTime {get;set;}

           /// <summary>
           /// Desc:是否删除：0-未删除, 1-已删除 (逻辑删除标志)
           /// Default:0
           /// Nullable:False
           /// </summary>
           [Description("是否删除：0-未删除, 1-已删除 (逻辑删除标志)")]           
           public bool IsDeleted {get;set;}

    }
}
